#include "EstadoDeEsperaDeJugadores.h"

EstadoDeEsperaDeJugadores::EstadoDeEsperaDeJugadores(JuegoServerImp* juego) {
	this->juego = juego;
}

void EstadoDeEsperaDeJugadores::unirse(Jugador* jugador) {
	juego->getJugadores()->push_back(jugador);
	if (juego->getJugadores()->size() == juego->getCantidadDeJugadores()) {
		juego->setEstado(juego->getEstadoDePreparacionDePartida());
		juego->getEstadoDePreparacionDePartida()->asignarEjercitos();
	}
}

void EstadoDeEsperaDeJugadores::asignarEjercitos() {
	std::cout<<"Esta accion no es valida para este estado"<<std::endl;
}
	
void EstadoDeEsperaDeJugadores::reforzarEjercitos(Jugador* jugador) {
	std::cout<<"Esta accion no es valida para este estado"<<std::endl;
}

void EstadoDeEsperaDeJugadores::realizarAtaque(Ataque* ataque) {
	std::cout<<"Esta accion no es valida para este estado"<<std::endl;
}

void EstadoDeEsperaDeJugadores::colocarEjercitos(Jugador* jugador, Territorio* territorio, unsigned int cantidadDeEjercitos) {
	std::cout<<"Esta accion no es valida para este estado"<<std::endl;
}

void EstadoDeEsperaDeJugadores::moverEjercitos(Jugador* jugador, Territorio* origen, Territorio* destino, unsigned int cantidadDeEjercitos) {
	std::cerr<<"Esta accion no es valida para este estado"<<std::endl;
}

EstadoDeEsperaDeJugadores::~EstadoDeEsperaDeJugadores()
{
}
